web3.js web3.eth.providers
code:web3.eth.providers.js
web3.providers
web3.eth.providers
web3.shh.providers
web3.bzz.providers
...
現在利用可能なプロバイダを含みます。
値
Object : 次のプロバイダを含むオブジェクトです。
Object - HttpProvider
HTTP プロバイダは非推奨です。
スブスクリプションには使用できません。
Object - WebsocketProvider
Websocket プロバイダ
従来のブラウザで使用する際の標準です。
Object - IpcProvider
IPC プロバイダ
ローカルノードで動作する node.js の DApps で使用されます。 もっともセキュアなコネクションです。
サンプルコード
code:example.js
var Web3 = require('web3');
// use the given Provider, e.g in Mist, or instantiate a new websocket provider
var web3 = new Web3(Web3.givenProvider || 'ws://remotenode.com:8546');
// or
var web3 = new Web3(Web3.givenProvider || new Web3.providers.WebsocketProvider('ws://remotenode.com:8546'));
// Using the IPC provider in node.js
var net = require('net');
var web3 = new Web3('/Users/myuser/Library/Ethereum/geth.ipc', net); // mac os path
// or
var web3 = new Web3(new Web3.providers.IpcProvider('/Users/myuser/Library/Ethereum/geth.ipc', net)); // mac os path
// on windows the path is: "\\\\.\\pipe\\geth.ipc"
// on linux the path is: "/users/myuser/.ethereum/geth.ipc"
動作デモ
code:demo.js
const web3 = new Web3(Web3.givenProvider || 'wss://mainnet.infura.io/ws');
console.log(web3.providers)
$(document.body).append(JSON.stringify(Object.keys(web3.providers)))
参考